Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
 All Forums
 Visual Assist
 Technical Support
 1711 managed c++ support

You must be registered to post a reply.
Click here to register.

Screensize:
UserName:
Password:
Format: BoldItalicizeUnderlineStrikethrough Align leftCenterAlign right Insert horizontal ruleUpload and insert imageInsert hyperlinkInsert email addressInsert codeInsert quoted textInsert listInsert Emoji
   
Message:

Forum code is on.
Html is off.

 
Check to subscribe to this topic.
   

T O P I C    R E V I E W
panenhan Posted - Jan 13 2009 : 01:32:52 AM
Hi! Good morning!
After evolution the new version of visual assist x for a week, I have to say that it is really the best add in for VS developers. It has so many time-saving features, I love it!
But I found there are some bugs with 1711, it seems that 1711 is not fully support managed c++ language. For example, it's not correctly parsed the -?-?!function()-?-? which is the managed extensions for C++. Here is the code snippet:
ref class ManagedClass
{
public:
MangedClass(void){};
~ManagedClass(void){};
!ManagedClass(void){}; // the new managed c++ syntax
}
And the second problem is that -?-?property-?-? support missing. I can-?-?t create a new property with an exist variable member with the refactor context menu, and also so it is not parse the property implement function member code correctly-?-?
The last bug is more simple, 1711 confuse the managed c++ pointer -?-?^-?-? with the native pointer -?-?*-?-?. If I create the implement with the refactor context munu for a function which declares like this:
ref class ManagedClass
{
public: Byte^ GetValue(void);
}
I will get the implement code like this in the .cpp file:
Byte^ * ManagedClass::GetValue( void )
{
}
It seem that -?-?$SymbolType$-?-? has the error value. :}
Best wishes!
7   L A T E S T    R E P L I E S    (Newest First)
support Posted - Aug 04 2010 : 5:46:49 PM
case=19150 is fixed in build 1829
support Posted - Mar 30 2009 : 08:47:47 AM
case=22824 is fixed in build 1721
accord Posted - Jan 15 2009 : 5:28:00 PM
I am seeing the same effect here with finalizers:

case=19150

Create implementation is not offered on C++ CLR properties is

case=7806
jorgito11 Posted - Jan 14 2009 : 3:40:59 PM
Feline,

I cannot "Create Implementation" of properties in a header (for example, foo.h) in C++/CLI also:

public ref class foo
{
public:
	property int Value
	{
		int get();
		void set(int value);
	}
private:
	int m_value;
};


The implementation of "int get();" and "void set(int value);" in foo.cpp should be:

int foo::Value::get()
{
	return m_value; // Added after implementation creation
}

void foo::Value::set(int value)
{
	m_value = value; // Added after implementation creation

}


VA_X.dll file version 10.5.1711.0 built 2008.12.11
Licensed to:
VA X: [email protected] (1-user license) Support ends 2009.06.20
VA.NET 7.1: [email protected] (1-user license)
DevEnv.exe version 9.0.30729.1
msenv.dll version 9.0.30729.1
Font: Courier New 16(Pixels)
Comctl32.dll version 6.0.2900.2982
Windows XP 5.1 Build 2600 Service Pack 2
2 processors

Platform: Win32
Stable Includes:
C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\include;
C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\atlmfc\\include;
C:\\Program Files\\Microsoft SDKs\\Windows\\v6.0A\\include;
C:\\Program Files\\Microsoft SDKs\\Windows\\v6.0A\\include;
C:\\Development\\Includes;
C:\\Development\\Cpp\\Native\\Ultimate Toolbox\\include;
C:\\Development\\Cpp\\Native\\Ultimate Grid\\Include;
C:\\Development\\Cpp\\Native\\Ultimate TCP-IP\\Include;
C:\\Development\\Cpp\\Native\\Ultimate TCP-IP\\Security\\Include;
C:\\Development\\Cpp\\Native\\Ultimate Grid\\Lib;
C:\\Development\\Cpp\\Native\\Boost\\boost_1_36_0;
C:\\Development\\Cpp\\Native\\STLSoft\\stlsoft-1.9.57\\include;
C:\\Development\\Cpp\\Native\\Vole\\vole-0.5.1\\include;
C:\\Development\\Cpp\\Native\\WTL80\\include;
C:\\Development\\Cpp\\Native\\OTL\\include;
C:\\app\\$gjacks23\\product\\10.2.0\\instantclient_10_2\\sdk\\include;
C:\\Development\\Cpp\\Native\\MPICH2\\include;
C:\\Development\\Cpp\\Native\\FastFormat\\fastformat-0.2.1-alpha-1\\include;
C:\\Development\\Cpp\\Native\\Flecxx\\flecxx-0.2.3\\include;
C:\\Development\\Cpp\\Native\\OpenRJ\\openrj-1.6.4\\include;
C:\\Development\\Cpp\\Native\\ShWild\\shwild-0.9.18\\include;
C:\\Development\\Cpp\\Native\\xTest\\xtests-0.8.5\\include;

Other Includes:

Stable Source Directories:
C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\atlmfc\\src\\mfc;
C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\atlmfc\\src\\mfcm;
C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\atlmfc\\src\\atl;
C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\crt\\src;
C:\\Development\\Cpp\\Native\\Ultimate Grid\\Source;
C:\\Development\\Cpp\\Native\\Ultimate Toolbox\\source;
C:\\Development\\Cpp\\Native\\Ultimate TCP-IP\\source;
C:\\Development\\Cpp\\Native\\Ultimate TCP-IP\\Security\\Source;

panenhan Posted - Jan 14 2009 : 10:30:41 AM
With regards to my second question, tomato doesn't seem to handle "property" correctly in managed VC. With the "property" fields that I want to create, tomato doesn't show the refactor context menu even though I declared in the scripts. Plus, I can only create an inlined version of getters and setters for "property". Can't get "Create Implementation" context menu from tomato. So if I use tomato's built-in support to create getters and setters for property fields, I always get inlined versions in the header file instead of in the cpp file. This creates a lot of untidy code. I noticed that Express Tools can handle this problem correctly, but not tomato. Wonder if it's a bug or just some swith I need to turn on in the settings?
panenhan Posted - Jan 14 2009 : 07:31:51 AM
Dear feline, thanks for your replay!

Maybe I didn't put my questions clearly the first time. So let me try to explain it again.

With regard to my first question, there are two types of destructors in managed VC. The first is the usual kind ~ManagedClass(), which tomato handles correctly. But the problem is that this kind of destructor is not guaranteed to be called, so I need the second form: !ManagedClass(), and put whatever I need to process in the second form. But tomato just doesn't recognized members in the second kind of destructor, so I can't use its refactor tools to do anything inside the second destructor.

Let me show you the screen shot about my first question metion above, I think it will help me to explain everything. Note that "m_MemberA" and "m_MemberB" in "!MemangedClass()" function are marked with red underlines, which tomato can't recognize, and hence I can't refactor them.

feline Posted - Jan 13 2009 : 11:31:54 AM
The first problem, what am I supposed to be seeing? This is what I am seeing when I add this code to VS2005. I have added the invalid variable to force underlining to appear:



Property support, I do not understand what you are talking about. Can you please post some example code to show the problem?

Create Implementation, I am seeing the same problem here:

case=22824

© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000