C++问题汇总
来源:互联网 发布:java获取文件大小 编辑:程序博客网 时间:2024/06/05 19:31
1. 类的静态变量和静态函数问题? 对于类的静态变量分配内存是在静态变量初始化的时候开始的,那静态函数的初始化在哪里进行呢?在定义的类中,还是在类的实现之外?
答:都在在类的实现处初始化,但别忘记加上返回类型或者定义的变量类型。 在类的定义中初始化静态函数感觉上应该不对的。但是函数有一个重栽的特性,也就是说可以在同一个函数中定义两个相同的函数,如void a(); void a(); 编译器是不会报错的。也就是说当静态函数在类中定义的时候,每次用类定义对象时都会执行函数,而函数没有初始化这么一说,在哪里定义都是可以的。变量就不行,如果你在类中定义,就会出现重定义的问题!!注意,感觉vc里会出现bug。
2. void CDrawView::AssertValid() const
{
CView::AssertValid();
}
void CDrawView::Dump(CDumpContext& dc) const
{
CView::Dump(dc);
}
如上,Dump都不是静态变量为什么可以如此的调用?
继承的关系
3.为什么增加OnLButtonUp()会自动增加
void CDrawView::OnCancelMode()
{
CView::OnCancelMode();
// TODO: Add your message handler code here
}这个消息相应?!
4:多维数组做函数行参的问题:
#include <iostream>
using namespace std;
const int x = 2;
const int y = 3;
int sum_arr(int** arr, int x, int y);
int main()
{
int array[x][y] = {{1, 2, 3},
{2, 4, 6}};
int sum = sum_arr(array, x, y);
cout<<sum<<endl;
}
int sum_arr(int** arr, int x, int y)
{
int total = 0;
int i, j;
for(i=0; i<x; i++)
for(j=0; j<y; j++)
{
total += arr[i][j];
}
return total;
}
这个程序哪里不对?
构造函数没有返回值,那我怎么看对象是否创建成功?
答:数组调用的方式不对,应该以地址的方式调用,如:int sum_arr(int (*arr)[3], int size)这样调用就对了
- C/C++问题汇总
- c语言基础问题汇总
- C语言变量问题汇总
- C/C++面试问题汇总
- 【C++学习笔记】问题汇总
- 【C++学习笔记】问题汇总
- 【C++学习笔记】问题汇总
- 【C++学习笔记】问题汇总
- Objective-c 内存溢出问题经验汇总
- ASP.NET(C#) 读取EXCEL问题汇总
- MySQL C/C++ API 问题汇总
- Objective-c 内存溢出问题经验汇总
- 调用WebService超时问题汇总(Java、C#)
- C/C++面试问题分类大汇总
- Swift项目兼容Objective-c问题汇总
- Swift项目兼容Objective-C问题汇总
- Swift项目兼容Objective-c问题汇总
- Objective-c 内存溢出问题经验汇总
- 转:Delphi中的线程类
- D3DX8指南06_Meshes
- N维指针与N维空间
- 一个很有用的方法,可用根据一个类文件找到他的路径
- Key的小于操作符号重载不正确导致map占用CPU占用100%的分析
- C++问题汇总
- 第一次正式使用CSdn
- 建一个学习记录blog
- 大阪第13天——大阪街头
- 触痛到心的一个故事...
- 转:delphi 实现文件上传下载
- NDS游戏《马里奥与路易》的迷你游戏《打地鼠》,玩了一晚上
- [HTML]显示/隐藏DIV的技巧(visibility与display的差别)
- A thinking after see an article