VC++ 6.0当中,CString和string这两种类型有啥区别?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VC++ 6.0当中,CString和string这两种类型有啥区别?相关的知识,希望对你有一定的参考价值。

RT,在看到的源程序中见到这两种类型

string和CString均是字符串模板类,string为标准模板类(STL)定义的字符串类,已经纳入C++标准之中;

CString(typedef CStringT> CString)为Visual C++中最常用的字符串类,继承自CSimpleStringT类,主要应用在MFC和ATL编程中,主要数据类型有char(应用于ANSI),wchar_t(unicode),TCHAR(ANSI与unicode均可);

ps:我也是找的,上面那个解释不错。。。
参考技术A string 是stl的一部分, 就是c++的标准内容了

CString是MFC的一部分, 是微软的发明。

基本上mfc的程序用CString配合稍微方便点, 而不是mfc的东西用CString 光include , pragma comment就得搞半天, 何况这东西也没啥好, 所以一般也就不用
参考技术B MFC中好多都是CString
的胆识2者可以转换的

让一个 VC 出现在另一个 VC 中

【中文标题】让一个 VC 出现在另一个 VC 中【英文标题】:Getting a VC to appear inside another VC 【发布时间】:2016-07-27 10:03:21 【问题描述】:

我有 2 个视图控制器。

VC1 里面有 2 个视图。

我想让 MenuUIVC 出现在我属于(子)VC1 的视图之一中。

我在 VC1 中尝试了这段代码,但没有成功。

MenuUIVC * menuViewVC = [[MenuUIVC alloc] init];
menuUIView = menuViewVC.view;

我希望能够在 VC1 的子视图 (menuUIView) 中看到 MenuUIVC。我将所有 IBOutlets 都连接到了故事板上。

【问题讨论】:

看看 iOS 中的容器视图 - developer.apple.com/library/ios/featuredarticles/… 容器视图是添加视图控制器作为子视图控制器的更好选择。 您可以使用容器视图来实现这一点。查看spin.atomicobject.com/2015/10/13/… 和developer.apple.com/library/ios/featuredarticles/…。希望这对您有所帮助。 adding view controller as child view in ios的可能重复 【参考方案1】:

您可以使用容器视图在视图控制器中获取视图控制器。并且,您可以通过 prepareForSegue() 方法获取对它的引用。

描述链接:

    iOS Container View The Easy Way to Switch Container Views in iOS

【讨论】:

【参考方案2】:

如果你使用的是 UIView,那你为什么不使用

[menuUIView addSubview:menuViewVC.view];

另一个选择是使用 childviewcontrollers。 例如,请参阅这些链接:-

    adding view controller as child view in ios Add child view controller to current view controller

使用容器或子视图控制器,为您提供了使用视图控制器属性的完整选项,而您在 UIView 中无法获得。 例如,您可以定向委托方法,而不能直接在 UIView 类中使用。 希望对您有所帮助。

干杯 桑杰

【讨论】:

【参考方案3】:

如果您想使用 IBOutlets 和 storyborad 进行容器视图,您可以使用它。 但如果您想使用代码来完成,请按照以下步骤操作:

    初始化并创建父视图控制器。 然后将所需的子视图添加为带有负框架的子视图。 现在可以在需要时使用 UIView 动画更改框架。 & 请在子视图以外的部分屏幕上添加点击手势识别器,以将其移回初始位置。

【讨论】:

以上是关于VC++ 6.0当中,CString和string这两种类型有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

VC++6.0环境中int型怎么转换成string型

导入 VC++2005 时 CString 出错?

vc++ 6.0里面的compile、build、go三个按钮是啥区别?

VC中char*与cstring型的转换

vc 6.0 如何将数字转换成 字符串

strlen函数的详细说明