When I use vectory.push_back(obj), if the length is out of reserved bound, it will deallocate the whole vector and reallocate a big piece of memory. From my understanding I think c++ only allocates 1 more place for the new obj. This is quite inefficient. Is there a way to set the step length whenever the size is out of bound? e.g. 50 more spaces.
I have a situation where map elements will be inserted all throughout a continuous loop. I know that there's no reserve function for maps like there are for vectors, but I know exactly the maximum amount of elements there will be in the map, I just don't know the value of each individual map.
Would it be possible if I just inserted the maximum amount of elements in the beginning of the program, and change the value of each/any individual element later on? For example:
std::map<int, std::string> map; //There will be a maximum of 200 elements in this map for (int i = 0; i < 200; i++) { map[i]; }
//Change the value of individual elements as I wish
Is it more efficient than initializing on declaration if initializing will be done often?
I am writing a program that minicks the library reserve system at my university and the problem is that when i run the code and reserve a room i am to keep track of the amount of times the room has been visited. To do this i set up a array roomcount and I count up by one every time i assign a room, The bug lies with when you reserve a room, then run option three, it will show that the previous visits is at 1, which is good. but then if i leave the room(option 2) and then run option 3 again to view the status of the rooms, the previous visits is set back to 0, which is not good. Ive been staring at this for hours and asked numerous people by we can't seem to figure out why the roomcount variable resets.
#include <stdio.h> #include <math.h> int main (void) { int choice; int roomchoice; int i = 0;
I am trying to re-size a bitmap image for a class.They gave us two options to use to do the program with: an array or move the file position indicator. I want to use the file option. All the bitmap header info is checking out. The file after being re-sized should be 822 bytes but it is 1.6 KiB and the image is distorted.
Code:
#include <stdint.h> /** * Common Data Types * * The data types in this section are essentially aliases for C/C++ * primitive data types.
I made a resize function for my dynamic array template class that goes as follows. Note that the private member variables are T* arr, unsigned used, and unsigned cap.
template <class T> void darray<T>::resize(unsigned size) { if (size > cap) { T* temp_arr = new T[size];
[Code] ....
Whenever I use this function to increase the size of the array, it will work the first time I need to use it, but after that, Visual Studios will trigger a breakpoint at line 14, and if I continue past the breaks, I eventually get _CrtIsValidHeapPointer(pUserData) assertion failure.
When I try to resize my form, every time i try to resize it while running, the window blinks between original size and the new size it was given, when i release the mouse it either stay in its new size or shrinks back to its original size, What makes it return to its original size, maybe its something with the form_Resize function..
Is there any way to allow user to resize a CDialog only in one direction ? I mean, by width, but not by height ? How ? I noticed that overriding WM_SIZE, I can do nothing about this issue ...
I am currently working on problem set 4 for Harvard's online CS50 course. I am working on a program that resizes a bmp image by a factor of N. N in entered along with an in-file and out-file in a command line argument. The program needs to calculate the header file for the out-file and write it to the out-file. It then needs to actually resize the image and, again, write to the out-file.
The first question I have relates to the header file, here is my code for calculating the header file:
At this point I need to actually resize the image. As far as I can tell there are 2 ways to go about this you either have to use an array to store each line you want to print repeatedly (and then you can just write it repeatedly) OR you have to move the pointer back in the input stream and repeat the read/resize/write process each time you need to print the row.
It is this that I am stuck on, first of all, I am not sure what system would be better for resizing the image, although I am leaning towards using an array, and regardless, I don't even know where to begin when in implementing either.
So what I am asking for is, first of all, just a "double check" to make sure my header code makes sense. And second of all, a push in the right direction for actually resizing the image. Here is my complete code:
/**************************************************************************** * resize.c * * Resizes a BMP piece by piece, just because. ***************************************************************************/
#include #include #include "bmp.h" int main(int argc, char* argv[]) { // ensure proper usage if (argc != 4) { printf("Usage: copy N infile outfile
how can I create a GUI application that can resize also the control buttons. If the user decide to make the windows bigger or smaller I would like my textbox, buttons, etc.. to follow. Like in Java they use a layout manager, but I can't seem to find the answer for c#. I though to use table layout panel, but it doesn't expand when expanding the windows, unless i miss something
// How can we write resize function for Matrix2 class; where this function need to use Protected data members of matrix1 class? Only setters are available in Matrix 1 class but there is no getter function in Matrix1 class !
How can we write resize function for Matrix2 class; where this function need to use Protected data members of matrix1 class? Only setters are available in Matrix 1 class but there is no getter function in Matrix1 class !
But I get these error: "--------------------Configuration: Sprite2 - Win32 Debug-------------------- Compiling...
Test Sprite2.cpp C:UsersJoaquimDocumentsVisual C 98Sprite2Test Sprite2.cpp(23) : error C2440: 'type cast' : cannot convert from 'void *' to 'struct Images' No constructor could take the source type, or constructor overload resolution was ambiguous Error executing cl.exe.
Suppose I wished to reallocate memory (resize) an array of pointers. Why does the following not work?(The program runs, yet yields a faulty segmentation error message. Why?):
Q. In context of C language syntax checking, which of the following can be modeled using Finite Automata?
(A) Detecting proper termination of an instruction. (B) Detecting balance of parentheses. (C) Detecting initialization of a variable. (D) None of the above.
I am just starting out with loops and I have run into an syntax error and for the life of me I cant find out the issue. Before it has been an issue of me forgetting to close my brackets but I am pretty sure I did that this time. I am trying to have the program keep looping the main menu until the user inputs a correct number.
I'm familiar with function pointers as the method to pass a function as an argument to another function. However, I recently encountered some other syntax. I have seen in multiple times and in books,so I know it is probably not a syntax error. But I am not totally sure.
#include <iostream> void Function1() { std::cout << "Function1"; } void Function2(void aFunction()) { aFunction(); } // make a param that describes the function the will be given // as a param (return type, identifier,
I keep getting a "Declaration syntax error" at line ""int main()". Is there something wrong with my int main()? And how do I go about it? Here is the program:
#include<stdlib.h> #include<iostream.h> #include<stdio.h> #include<math.h> #include<conio.h> float rung4(float x, float y, float h) int main() { float eps=0.00001;
I had to learn how to use variadic templates recently, and had trouble finding simple examples that just showed the basic syntax.
So I decided to write one myself. Admittedly, it's a bit on the long side, but that is mostly because it includes five specializations.
insert Code: // Variadic.C // Compile command: g++ Variadic.C -std=c++0x // I used GCC version 4.6.3 on Ubuntu.
// This file contains a basic variadic template with five specializations. // It is intended for non-software engineers who are looking for a simple // example of variadic template syntax.